import {debounce} from '@/common/utils'

export const itemListenerMixin = {
  data() {
    return {
      itemImgListener: null
    }
  },
  mounted() {
    const refresh = debounce(this.$refs.scroll.refresh,100)

    this.itemImgListener = () => {
      refresh()
    }

    this.$bus.$on('itemImageLoad', this.itemImgListener)
  }
}

// 因为返回置顶在许多页面都会应用，所以可以进行混入
export const backTop = {
  data() {
    return {
      isShowBackTop: false
    }
  },
  methods: {
    backClick() {
      // 通过this.$refs.scroll拿到scroll组件，然后再scroll是拿到scroll组件中的scroll对象
      // scrollTo方法是可以滑动，滑到x,y位置，通过多少秒
      // this.$refs.scroll.scroll.scrollTo(0,0,300)

      // 也可以再Scroll组件中封装一个scrollTo方法
      this.$refs.scroll.scrollTo(0,0,300)
    }
  }
}
